package com.ruoyi.platform.service;

import java.util.List;
import com.ruoyi.platform.domain.MExecuteCommand;
import com.ruoyi.platform.exception.BusinessException;

/**
 * 【执行指令】Service接口
 * 
 * @author dataControl
 * @date 2025-09-15
 */
public interface IMExecuteCommandService 
{
    /**
     * 查询【执行指令】
     * 
     * @param commandId 【执行指令】主键
     * @return 【执行指令】
     */
    public MExecuteCommand selectMExecuteCommandByCommandId(Long commandId);

    /**
     * 查询【执行指令】列表
     * 
     * @param mExecuteCommand 【执行指令】
     * @return 【执行指令】集合
     */
    public List<MExecuteCommand> selectMExecuteCommandList(MExecuteCommand mExecuteCommand);

    /**
     * 新增【执行指令】
     * 
     * @param mExecuteCommand 【执行指令】
     * @return 结果
     */
    public int insertMExecuteCommand(MExecuteCommand mExecuteCommand) throws BusinessException;

    /**
     * 查询【请填写功能名称】
     *
     * @param commandId 【请填写功能名称】主键
     * @return 【请填写功能名称】
     */
    public Boolean retrySendCommandByCommandId(Long commandId,Long commandResultId) throws BusinessException;

    /**
     * 修改【执行指令】
     * 
     * @param mExecuteCommand 【执行指令】
     * @return 结果
     */
    public int updateMExecuteCommand(MExecuteCommand mExecuteCommand);

    /**
     * 批量删除【执行指令】
     * 
     * @param commandIds 需要删除的【执行指令】主键集合
     * @return 结果
     */
    public int deleteMExecuteCommandByCommandIds(Long[] commandIds);

    /**
     * 删除【执行指令】信息
     * 
     * @param commandId 【执行指令】主键
     * @return 结果
     */
    public int deleteMExecuteCommandByCommandId(Long commandId);

    void automaticInspection();

}
